package com.bnz.manager.service.impl;

import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;

import java.security.Key;
import java.util.Map;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bnz.utils.PageUtils;
import com.bnz.utils.Query;

import com.bnz.manager.dao.SellerDao;
import com.bnz.manager.entity.SellerEntity;
import com.bnz.manager.service.SellerService;


@Service("sellerService")
public class SellerServiceImpl extends ServiceImpl<SellerDao, SellerEntity> implements SellerService {

    @Override
    public PageUtils queryPage(Map<String, Object> params) {
        // 1、条件构造器
        QueryWrapper<SellerEntity> wrapper = new QueryWrapper<>();
        // 2、条件查询(前端传入的参数key) 获取查询参数
        Object key = params.get("key");
        // 3、判断是否有值传入
        if (!StringUtils.isEmpty(key.toString())){
            // 3.1、条件查询（模糊查询）
            wrapper.like("seller_id",key).or()
                    .like("name",key).or() // 公司名称
                    .like("nick_name",key); // 店铺名称
        }
        // 4、分页查询
        IPage<SellerEntity> page = this.page(
                new Query<SellerEntity>().getPage(params),
                wrapper
        );

        return new PageUtils(page);
    }

    /**
     * 修改审核状态值
     * @param sellerId
     * @param status
     */
    @Override
    public void updateStatus(String sellerId, String status) {
        // 1、创建实体类对象
        SellerEntity sellerEntity = new SellerEntity();
        // 2、设置两个状态值
        sellerEntity.setSellerId(sellerId);
        sellerEntity.setStatus(status);
        // 对状态值进行更改
        baseMapper.updateById(sellerEntity);
    }

}